﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Linq;
using System.Threading.Tasks;
using System.Windows.Forms;
using DevExpress.XtraEditors;

namespace QLNSClient
{
    public partial class Frm_DT : DevExpress.XtraEditors.XtraForm
    {
        QLNSServiceReference.QLNSServiceClient sv = new QLNSServiceReference.QLNSServiceClient();
        
        public Frm_DT()
        {
            InitializeComponent();
        }

        public void LoadData()
        {
            gv_dsDT.DataSource = sv.getDT();
            gridView1.Columns[0].Caption = "Mã dân tộc";
            gridView1.Columns[1].Caption = "Tên dân tộc";

            txt_MaDT.Enabled = false;
            txt_TenDT.Enabled = false;

            btn_Luu.Enabled = false;
            btn_Xoa.Enabled = false;
            btn_Sua.Enabled = false;
            btn_Huy.Enabled = false;
            
        }

        private void Frm_DT_Load(object sender, EventArgs e)
        {
            LoadData();
        }

        private void btn_Them_Click(object sender, EventArgs e)
        {
            List<QLNSServiceReference.DAN_TOC> listLastDT = new List<QLNSServiceReference.DAN_TOC>(sv.getLastDT());
            int lastDT = listLastDT[0].Ma_DT;
            txt_MaDT.Text = (lastDT + 1).ToString();
            
            btn_Luu.Enabled = true;
            //btn_Xoa.Enabled = false;
            btn_Sua.Enabled = false;
            btn_Huy.Enabled = true;

            txt_TenDT.Enabled = true;
            txt_TenDT.Text = "";
        }

        private void btn_Luu_Click(object sender, EventArgs e)
        {
            btn_Huy.Enabled = false;
            btn_Them.Enabled = true;

            if (txt_TenDT.Text == "")
            {
                MessageBox.Show("Vui lòng nhập tên dân tộc!", "Cảnh báo", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                txt_TenDT.Focus();
            }
            else
            {
                int tempMaDT = Int32.Parse(txt_MaDT.Text);
                string tempTenDT = txt_TenDT.Text;

                QLNSServiceReference.DAN_TOC dt = new QLNSServiceReference.DAN_TOC();
                dt.Ma_DT = tempMaDT;
                dt.TenDT = tempTenDT;

                if (demsua == 1)
                {
                    DialogResult dr = MessageBox.Show("Bạn có chắc muốn cập nhật lại thông tin?!", "Cảnh báo", MessageBoxButtons.OKCancel, MessageBoxIcon.Warning);
                    if (dr == DialogResult.OK)
                    {
                        sv.updateDT(dt);
                        LoadData();
                        demsua = 0;
                        MessageBox.Show("Cập nhật thông tin dân tộc có mã '" + txt_MaDT.Text + "' thành công!", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    }
                }
                else
                {
                    int kq = sv.addDT(dt);
                    if (kq != -1)
                    {
                        LoadData();
                        MessageBox.Show("Thêm dân tộc mã '"+txt_MaDT.Text+"' thành công!", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    }
                }
            }
        }

        private void btn_Huy_Click(object sender, EventArgs e)
        {
            btn_Luu.Enabled = false;
            btn_Huy.Enabled = false;
            btn_Them.Enabled = true;
            //btn_Xoa.Enabled = false;
            btn_Sua.Enabled = false;

            txt_MaDT.Enabled = false;
            txt_TenDT.Enabled = false;
        }


        int demsua = 0;
        private void btn_Sua_Click(object sender, EventArgs e)
        {
            demsua = 1;
            
            btn_Luu.Enabled = true;
            btn_Them.Enabled = false;
            btn_Huy.Enabled = true;
            btn_Sua.Enabled = false;

            txt_TenDT.Enabled = true;
        }

        
        private void gv_dsDT_Click(object sender, EventArgs e)
        {
          
            
            btn_Luu.Enabled = false;
            //btn_Xoa.Enabled = true;
            btn_Sua.Enabled = true;
            btn_Huy.Enabled = false;
            btn_Them.Enabled = true;

            txt_MaDT.Enabled = false;
            txt_TenDT.Enabled = false;
            try
            {
                txt_MaDT.Text = gridView1.GetFocusedRowCellDisplayText(gridView1.Columns[0]);
                txt_TenDT.Text = gridView1.GetFocusedRowCellDisplayText(gridView1.Columns[1]);
            }
            catch
            { }
        }
    }
}